package com.example.demo.common;

import org.springframework.util.DigestUtils;

import java.util.UUID;

//密码公共类
public class PasswordUilt {
    /**
     * 加密
     * @param password 用户输入的明文密码
     * @return 返回统一格式盐值+$+加密得密码
     */
    public static String encryption(String password) {
        String uuid=UUID.randomUUID().toString().replace("-","");//获取盐值
        String md5pass=DigestUtils.md5DigestAsHex((uuid+password).getBytes());//将(盐值+明文密码)进行md5加密
        return uuid+"%"+md5pass;
    }

    /**
     * 解密
     * @param password  用户的明文密码
     * @param endpassword 数据库中最终的密码
     * @return
     */

    public static boolean decrypt(String password,String endpassword) {
        String uuid=endpassword.split("%")[0];//获取盐值
        String md5pass=DigestUtils.md5DigestAsHex((uuid+password).getBytes());//将(盐值+明文密码)进行md5加密
        return (uuid+"%"+md5pass).equals(endpassword);
    }

//    public static void main(String[] args) {
//        String pa="123456";
//        String jia=PasswordUilt.encryption(pa);
//        System.out.println(jia);
//        System.out.println(PasswordUilt.decrypt("123456", jia));
//    }
}
